#include "UpdateInfo.h"

#include "StrUtils.h"
#include "tinyxml.h"

UpdateInfo::UpdateInfo(void)
{
}


UpdateInfo::~UpdateInfo(void)
{
}


UpdateInfo::UpdateInfo(const std::string &xmlUrl)
{
	TiXmlDocument xmlDoc(xmlUrl.c_str());
	if (xmlDoc.LoadFile())
	{
		TiXmlNode* updateNode = xmlDoc.FirstChild("info");
		assert(updateNode);
		TiXmlElement* version = updateNode->FirstChildElement("version");
		assert(version);
		TiXmlElement* appUrl = version->NextSiblingElement("appUrl");
		assert(appUrl);

// 		TiXmlElement* md5 = version->NextSiblingElement("md5");
// 		assert(md5);
		
		m_version.setVersion(version->GetText());
		m_appUrl = appUrl->GetText();
		//m_md5 = md5->GetText();

	}
}



Version UpdateInfo::getVersion() const
{
	return m_version;
}
void UpdateInfo::setVersion( const Version &ver )
{
	m_version = ver;
}

std::string UpdateInfo::getAppUrl() const 
{
	return m_appUrl;
}

void UpdateInfo::setAppUrl( const std::string &appUrl )
{
	m_appUrl = appUrl;
}

std::string UpdateInfo::getFileMD5() const
{
	return m_md5;
}

void UpdateInfo::setFileMD5( const std::string &md5 )
{
	m_md5 = md5
}

